package it.iubar.paghe.logic.anagrafica.auto;

import java.util.List;

import org.apache.cayenne.CayenneDataObject;

import it.iubar.paghe.logic.anagrafica.Capoluogo;
import it.iubar.paghe.logic.anagrafica.Indirizzo;
import it.iubar.paghe.logic.anagrafica.Lavoratore;
import it.iubar.paghe.logic.anagrafica.Personafisica;
import it.iubar.paghe.logic.anagrafica.Provincia;
import it.iubar.paghe.logic.anagrafica.Sindacato;
import it.iubar.paghe.logic.paghe.IrpefAddizcomunaleesenz;
import it.iubar.paghe.logic.paghe.IrpefAddizionalecomunale;
import it.iubar.paghe.logic.paghe.Posizionelavoratore;
import it.iubar.paghe.logic.presenze.Festivita;

/**
 * Class _Comune was generated by Cayenne.
 * It is probably a good idea to avoid changing this class manually,
 * since it may be overwritten next time code is regenerated.
 * If you need to make any customizations, please use subclass.
 */
public abstract class _Comune extends CayenneDataObject {

    public static final String CODCATASTALE_PROPERTY = "codcatastale";
    public static final String DENOMINAZIONE_PROPERTY = "denominazione";
    public static final String IDCOMUNE_PROPERTY = "idcomune";
    public static final String IDPROVINCIA_PROPERTY = "idprovincia";
    public static final String SOPPRESSO_PROPERTY = "soppresso";
    public static final String ADDIZCOMUNALEESENZ_ARRAY_PROPERTY = "addizcomunaleesenzArray";
    public static final String ADDIZIONALEREGIONALE_ARRAY_PROPERTY = "addizionaleregionaleArray";
    public static final String CAPOLUOGO_ARRAY_PROPERTY = "capoluogoArray";
    public static final String FESTIVITA_ARRAY_PROPERTY = "festivitaArray";
    public static final String INDIRIZZO_ARRAY_PROPERTY = "indirizzoArray";
    public static final String LAVORATORE_ARRAY_PROPERTY = "lavoratoreArray";
    public static final String PERSONAFISICA_ARRAY3_PROPERTY = "personafisicaArray3";
    public static final String POSIZIONELAVORATORE_ARRAY_PROPERTY = "posizionelavoratoreArray";
    public static final String SINDACATO_ARRAY_PROPERTY = "sindacatoArray";
    public static final String TO_PROVINCIA_PROPERTY = "toProvincia";

    public static final String IDCOMUNE_PK_COLUMN = "IDCOMUNE";

    public String getCodcatastale() {
        return (String)readProperty("codcatastale");
    }

    public String getDenominazione() {
        return (String)readProperty("denominazione");
    }

    public String getIdcomune() {
        return (String)readProperty("idcomune");
    }

    public String getIdprovincia() {
        return (String)readProperty("idprovincia");
    }

    public Short getSoppresso() {
        return (Short)readProperty("soppresso");
    }

    public void addToAddizcomunaleesenzArray(IrpefAddizcomunaleesenz obj) {
        addToManyTarget("addizcomunaleesenzArray", obj, true);
    }
    public void removeFromAddizcomunaleesenzArray(IrpefAddizcomunaleesenz obj) {
        removeToManyTarget("addizcomunaleesenzArray", obj, true);
    }
    @SuppressWarnings("unchecked")
    public List<IrpefAddizcomunaleesenz> getAddizcomunaleesenzArray() {
        return (List<IrpefAddizcomunaleesenz>)readProperty("addizcomunaleesenzArray");
    }


    public void addToAddizionaleregionaleArray(IrpefAddizionalecomunale obj) {
        addToManyTarget("addizionaleregionaleArray", obj, true);
    }
    public void removeFromAddizionaleregionaleArray(IrpefAddizionalecomunale obj) {
        removeToManyTarget("addizionaleregionaleArray", obj, true);
    }
    @SuppressWarnings("unchecked")
    public List<IrpefAddizionalecomunale> getAddizionaleregionaleArray() {
        return (List<IrpefAddizionalecomunale>)readProperty("addizionaleregionaleArray");
    }


    public void addToCapoluogoArray(Capoluogo obj) {
        addToManyTarget("capoluogoArray", obj, true);
    }
    public void removeFromCapoluogoArray(Capoluogo obj) {
        removeToManyTarget("capoluogoArray", obj, true);
    }
    @SuppressWarnings("unchecked")
    public List<Capoluogo> getCapoluogoArray() {
        return (List<Capoluogo>)readProperty("capoluogoArray");
    }


    public void addToFestivitaArray(Festivita obj) {
        addToManyTarget("festivitaArray", obj, true);
    }
    public void removeFromFestivitaArray(Festivita obj) {
        removeToManyTarget("festivitaArray", obj, true);
    }
    @SuppressWarnings("unchecked")
    public List<Festivita> getFestivitaArray() {
        return (List<Festivita>)readProperty("festivitaArray");
    }


    public void addToIndirizzoArray(Indirizzo obj) {
        addToManyTarget("indirizzoArray", obj, true);
    }
    public void removeFromIndirizzoArray(Indirizzo obj) {
        removeToManyTarget("indirizzoArray", obj, true);
    }
    @SuppressWarnings("unchecked")
    public List<Indirizzo> getIndirizzoArray() {
        return (List<Indirizzo>)readProperty("indirizzoArray");
    }


    public void addToLavoratoreArray(Lavoratore obj) {
        addToManyTarget("lavoratoreArray", obj, true);
    }
    public void removeFromLavoratoreArray(Lavoratore obj) {
        removeToManyTarget("lavoratoreArray", obj, true);
    }
    @SuppressWarnings("unchecked")
    public List<Lavoratore> getLavoratoreArray() {
        return (List<Lavoratore>)readProperty("lavoratoreArray");
    }


    public void addToPersonafisicaArray3(Personafisica obj) {
        addToManyTarget("personafisicaArray3", obj, true);
    }
    public void removeFromPersonafisicaArray3(Personafisica obj) {
        removeToManyTarget("personafisicaArray3", obj, true);
    }
    @SuppressWarnings("unchecked")
    public List<Personafisica> getPersonafisicaArray3() {
        return (List<Personafisica>)readProperty("personafisicaArray3");
    }


    public void addToPosizionelavoratoreArray(Posizionelavoratore obj) {
        addToManyTarget("posizionelavoratoreArray", obj, true);
    }
    public void removeFromPosizionelavoratoreArray(Posizionelavoratore obj) {
        removeToManyTarget("posizionelavoratoreArray", obj, true);
    }
    @SuppressWarnings("unchecked")
    public List<Posizionelavoratore> getPosizionelavoratoreArray() {
        return (List<Posizionelavoratore>)readProperty("posizionelavoratoreArray");
    }


    public void addToSindacatoArray(Sindacato obj) {
        addToManyTarget("sindacatoArray", obj, true);
    }
    public void removeFromSindacatoArray(Sindacato obj) {
        removeToManyTarget("sindacatoArray", obj, true);
    }
    @SuppressWarnings("unchecked")
    public List<Sindacato> getSindacatoArray() {
        return (List<Sindacato>)readProperty("sindacatoArray");
    }



    public Provincia getToProvincia() {
        return (Provincia)readProperty("toProvincia");
    }


}
